package com.weight.system.login.service.impl;

import com.weight.system.login.PO.LoginInfo;
import com.weight.system.login.service.LoginInfoService;
import com.weight.system.login.DAO.LoginInfoMapper;
import java.util.List;
import java.util.Map;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.github.pagehelper.PageHelper;
import org.springframework.transaction.annotation.Transactional;
import com.weight.common.util.CommonUtils;
import lombok.extern.slf4j.Slf4j;

/**
 * 登录日志表
 */
@Service
@Transactional
@Slf4j
public class LoginInfoServiceImpl implements LoginInfoService {

	@Autowired
	private LoginInfoMapper loginInfoMapper;


	/**
	 * 查询登录日志信息--条件查询
	 * @param map
	 * @return
	 */
	@Override
	public List<LoginInfo> findLoginInfoByT(Map map){
		return loginInfoMapper.findLoginInfoByT(map);
	}

	/**
	 * 查询登录日志信息--条件，分页查询
	 * @param currentPage
	 * @param pageSize
	 * @param map
	 * @return
	 */
	@Override
	public List<LoginInfo> findLoginInfoByPage(int currentPage,int pageSize,Map map){
		PageHelper.startPage(currentPage, pageSize);
		List<LoginInfo> loginInfoList = loginInfoMapper.findLoginInfoByT(map);
		return loginInfoList;
	}

	/**
	 * 查询登录日志信息--查询全部
	 * @return
	 */
	@Override
	public List<LoginInfo> findAll(){
		return loginInfoMapper.findAll();
	}

	/**
	 * ID查询登录日志信息
	 * @param map
	 * @return
	 */
	@Override
	public LoginInfo findByLoginInfoId(Map map){
		LoginInfo loginInfo=loginInfoMapper.findByLoginInfoId(map);
		CommonUtils.validateExistObj(loginInfo,map);
		return loginInfo;
	}

	/**
	 * ID查询登录日志信息-批量
	 * @param loginInfoIdList
	 * @return
	 */
	@Override
	public List findByLoginInfoIdList(List loginInfoIdList){
		List idList = loginInfoMapper.findByLoginInfoIdList(loginInfoIdList);
		CommonUtils.validateExistList(idList,loginInfoIdList);
		return idList;
	}

	/**
	 * 添加登录日志
	 * @param loginInfo
	 */
	@Override
	public void insertLoginInfo(LoginInfo loginInfo){
		loginInfoMapper.insertLoginInfo(loginInfo);
	}

	/**
	 * 批量添加登录日志
	 * @param loginInfoList
	 */
	@Override
	public void insertLoginInfoBatch(List<LoginInfo> loginInfoList){
		loginInfoMapper.insertLoginInfoBatch(loginInfoList);
	}

	/**
	 * 修改登录日志
	 * @param loginInfo
	 */
	@Override
	public void updateLoginInfo(LoginInfo loginInfo){
		loginInfoMapper.updateLoginInfo(loginInfo);
	}

	/**
	 * 修改登录日志
	 * @param loginInfo
	 */
	@Override
	public void updateLoginInfoLimt(LoginInfo loginInfo){
		loginInfoMapper.updateLoginInfoLimt(loginInfo);
	}

	/**
	 * 物理删除登录日志
	 * @param map
	 */
	@Override
	public void deleteByLoginInfoId(Map map){
		loginInfoMapper.deleteByLoginInfoId(map);
	}

	/**
	 * 批量物理删除登录日志
	 * @param loginInfoIdList
	 */
	@Override
	public void deleteByLoginInfoIdBatch(List loginInfoIdList){
		loginInfoMapper.deleteByLoginInfoIdBatch(loginInfoIdList);
	}

	/**
	 * 状态删除登录日志
	 * @param map
	 */
	@Override
	public void upDelByLoginInfoId(Map map){
		loginInfoMapper.upDelByLoginInfoId(map);
	}

	/**
	 * 批量状态删除登录日志
	 * @param loginInfoList
	 */
	@Override
	public void upDelByLoginInfoIdBatch(Map<String, Object> map){
		loginInfoMapper.upDelByLoginInfoIdBatch(map);
	}

}